package com.ys.service.business;

import com.ys.vo.R;

import java.math.BigDecimal;
import java.util.Date;

public interface TcwAccountDetailedForCompanyService {
	
	void updateBatch();
	
	void completeDataByGuid(String guid);

	/**
	 * 新增一条流水
	 * 必填：vgsbm划出公司编码；vgsbmp划入公司编码；vjylx交易类型；fje交易金额；djysj交易时间；dshsj审核时间；vbz备注
	 * 选填：mname;mtype;mnid;mbid;mguid；writeTime记账时间（如果为空，默认审核时间）
	 */
	R addTcwAccountDetailedForCompany(String vgsbm, String vgsbmp, String vjylx, BigDecimal fje,Date djysj, Date dshsj,String vbz,String mbid,Date writeTime) throws Exception;


	/**
	 * 新增一条流水,去除触发器
	 * 必填：vgsbm划出公司编码；vgsbmp划入公司编码；vjylx交易类型；fje交易金额；djysj交易时间；dshsj审核时间；vbz备注
	 * 选填：mname;mtype;mnid;mbid;mguid；writeTime记账时间（如果为空，默认审核时间）
	 */
	R addTcwAccountDetailedForCompanyNoTrigger(String vgsbm, String vgsbmp, String vjylx, BigDecimal fje,Date djysj, Date dshsj,String vbz,String mbid,Date writeTime) throws Exception;


	/**
	 * 新增一条流水
	 * 必填：vgsbm划出公司编码；vgsjc划出公司简称；vgsbmp划入公司编码；vgsjcp划入公司简称；vjylx交易类型；fje交易金额；djysj交易时间；dshsj审核时间；vbz备注
	 * 选填：mname;mtype;mnid;mbid;mguid；writeTime记账时间（如果为空，默认审核时间）
	 */
	R addTcwAccountDetailedForCompanyWithJc(String vgsbm,String vgsjc, String vgsbmp, String vgsjcp, String vjylx, BigDecimal fje,Date djysj, Date dshsj,String vbz,
											String mbid,Date writeTime) throws Exception;


	/**
	 * 新增一条流水,去除触发器
	 * 必填：vgsbm划出公司编码；vgsjc划出公司简称；vgsbmp划入公司编码；vgsjcp划入公司简称；vjylx交易类型；fje交易金额；djysj交易时间；dshsj审核时间；vbz备注
	 * 选填：mname;mtype;mnid;mbid;mguid；writeTime记账时间（如果为空，默认审核时间）
	 */
	R addTcwAccountDetailedForCompanyWithJcNoTrigger(String vgsbm,String vgsjc, String vgsbmp, String vgsjcp, String vjylx, BigDecimal fje,Date djysj, Date dshsj,String vbz,
													 String mbid,Date writeTime) throws Exception;


	//定时新增流水：资金占用费
	void fundOccupyCost() throws Exception;

	//定时新增流水：占库费
	void occupyInventoryCost() throws Exception;






}